import request from '@/utils/request'

// 管理员登录
export function login(data) {
  return request({
    url: '/user/loginAdmin', 
    method: 'post',
    data
  })
}

// 获取登录验证码
export function getLoginVerificationCode(username) {
  return request({
    url: '/verification/sendLoginVerificationCode',
    method: 'get',
    params: { username }
  })
}

// 获取当前用户信息
export function getUserInfo() {
  return request({
    url: '/user/getCurrentUser',
    method: 'get'
  })
}

// 获取用户列表
export function getUserList(params) {
  return request({
    url: '/user/userPage',
    method: 'get',
    params
  })
}

// 获取用户详情
export function getUserDetail(id) {
  return request({
    url: `/user/getUserById/${id}`,
    method: 'get'
  })
}

// 创建用户
export function createUser(data) {
  return request({
    url: '/user/addOrUpdateUser',
    method: 'post',
    data
  })
}

// 更新用户
export function updateUser(data) {
  return request({
    url: '/user/addOrUpdateUser',
    method: 'post',
    data
  })
}

// 删除用户
export function deleteUser(ids) {
  return request({
    url: '/user/deleteBatch',
    method: 'post',
    data: ids
  })
}

// 更新用户状态
export function updateUserStatus(data) {
  return request({
    url: '/user/updateStatus',
    method: 'post',
    data
  })
}

// 更新用户角色
export function updateUserRole(data) {
  return request({
    url: '/user/updateRole',
    method: 'post',
    data
  })
}

// 重置密码
export function resetPassword(data) {
  return request({
    url: '/user/resetPassword',
    method: 'post',
    data
  })
}

// 批量删除用户
export function deleteBatch(ids) {
  return request({
    url: '/user/deleteBatch',
    method: 'post',
    data: ids
  })
}

// 获取当前用户信息
export function getCurrentUser() {
  return request({
    url: '/user/getCurrentUser',
    method: 'get'
  })
}

// 更新用户资料
export function updateProfile(data) {
  return request({
    url: '/user/updateProfile',
    method: 'post',
    data
  })
}

// 更新存储使用量
export function updateStorageUsed(data) {
  return request({
    url: '/user/updateStorageUsed',
    method: 'post',
    data
  })
}

// ==================== 用户详情相关 ====================

// 获取用户统计
export function getUserStats(userId) {
  return request({
    url: `/user/${userId}/stats`,
    method: 'get'
  })
}

// 获取用户活动记录
export function getUserActivities(userId) {
  return request({
    url: `/user/${userId}/activities`,
    method: 'get'
  })
}

// 获取用户学习记录
export function getUserLearningRecords(userId) {
  return request({
    url: `/user/${userId}/learning-records`,
    method: 'get'
  })
}

// 获取用户任务记录
export function getUserTaskRecords(userId) {
  return request({
    url: `/user/${userId}/task-records`,
    method: 'get'
  })
}

// 获取用户登录日志
export function getUserLoginLogs(userId) {
  return request({
    url: `/user/${userId}/login-logs`,
    method: 'get'
  })
}

// 重置用户密码
export function resetUserPassword(userId) {
  return request({
    url: `/user/${userId}/reset-password`,
    method: 'post'
  })
}

// 切换用户状态
export function toggleUserStatus(userId) {
  return request({
    url: `/user/${userId}/toggle-status`,
    method: 'post'
  })
}
